Since the amount of data of an image is generally very large, it takes a long time if the image data is processed sequentially. Thus, a parallel data processing is devised for decreasing the data processing time, in which a plurality of unit processors are provided, a block of data of an image is divided equally and allotted to the unit processors, and the allotments are processed in parallel by the unit processors.
If, however, the hardware constructions of the plural unit processors are diverse, their data processing abilities are also diverse. And there is a case in which one or some of the unit processors are assigned other jobs than the parallel data processing job. Further, since an image is hardly uniform in its complexity, the time needed to process data of an image differs from part to part of the image. Therefore, the lengths of processing time of plural unit processors are usually different from one another, and it often occurs that one or some of the unit processors are still working while others have finished the assigned job if the image data is divided equally. In this case, the parallel data processing is not really efficient, because, if the whole of the image data is the object of the next data processing step, the next data processing step must wait until the last of the unit processors finishes its allotment.
Japanese laid-open (unexamined) patent application No. S62-166471 discloses an improved parallel data processing method in which an image is divided into many narrow linear areas, and every unit processor sequentially takes up another narrow area when it finishes processing an area. By this method, the processing time is averaged among the unit processors and the overall efficiency is improved.
There is a drawback in the method, and sometimes the efficiency is deteriorated. When the type of image data processing is such that processing of a part requires reference to the processing of another part (e.g., line-thickening or shading), the narrow division increases the chance of inter-part references and multiple-part references. These cross references between the plural unit processors increase the complexity of the data processing and elongate the processing time substantially.